package cn.tedu.spotms.server.service;

import cn.tedu.spotms.server.pojo.dto.ProjectAddNewDTO;
import cn.tedu.spotms.server.pojo.dto.ProjectUpdateInfoDTO;
import cn.tedu.spotms.server.pojo.vo.ProjectSimpleVO;


import java.util.List;

/**
 * 游乐项目业务逻辑层接口
 */

public interface IProjectService {

    /**
     * 添加"游乐项目"数据
     * @param projectAddNewDTO "游乐项目"数据
     */
    void addNewProject(ProjectAddNewDTO projectAddNewDTO);

    /**
     * 根据"游乐项目"id删除其数据
     * @param id "游乐项目"id
     */
    void deleteProjectById(Long id);

    /**
     * 修改"游乐项目" 数据
     * @param project "游乐项目" 数据
     */
    void updateProjectInfo(ProjectUpdateInfoDTO project);

    /**
     * 通过"游乐项目"的名字查询简单的游乐项目数据
     * @param name "游乐项目"的名字
     * @return 简单的游乐项目数据
     */
    ProjectSimpleVO getProjectSimpleByName(String name);

    /**
     * 查询所有的"游乐项目"数据
     * @return 所有的"游乐项目"数据
     */
    List<ProjectSimpleVO> projectList();
}
